from math import sqrt


class MyMatch:
    """根实例没有关系的应该用静态方法，而需要用到实例的应该使用实例方法，
        一个类如果都是静态方法，这个“类”不像是类，而像是一些功能的“集合”。
    """
    @staticmethod
    def add( x, y):
        return x + y

    @staticmethod
    def min(x, y):
        return x - y

    @staticmethod
    def mul(x, y):
        return x * y

    @staticmethod
    def div(x, y):
        return x / y

    @staticmethod
    def power(x, y):
        return x ** y

    @staticmethod
    def root(x):
        return sqrt(x)


class Man:
    """身边类的扩展"""
    state = 'Live'
    __sexual_orientation = 'woman'

    def __init__(self, name, sex):
        self.__name = name
        self.sex = sex

    def speak(self):
        return f"你好, 我叫{self.__name}!"

    def __str__(self):
        return "我会敲代码！"

if __name__ == '__main__':
    man = Man('Jove', 'man') # 实例一个类
    man.speak()             # 调用实例方法
    print(man)              # 返回类描述
    print(man.state)        # 调用类属性